Facilitating structure automation functionality by automatically modifying a condition of an environment based on implementing a parameter adjustment at a remote device within the structure

ABSTRACT

Facilitating structure automation functionality by automatically modifying a condition of an environment based on implementing a parameter adjustment at a remote device within the structure is provided herein. A method can comprise facilitating a communication link between a controller device, a first auxiliary device, and a second auxiliary device. Facilitating the communication link comprises defining a communication standard that controls a communication between the first auxiliary device and the second auxiliary device. The method can also comprise implementing a first change at the first auxiliary device based on a first determination that a first condition within an environment of the first auxiliary device is to be changed. Further, the method can comprise implementing a second change at the second auxiliary device based on a second determination that a second condition within the environment of the second auxiliary device is to be changed.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Patent Application Ser. No. 62/568,283 filed on Oct. 4, 2017, entitled “FACILITATING STRUCTURE AUTOMATION FUNCTIONALITY BY AUTOMATICALLY MODIFYING A CONDITION OF AN ENVIRONMENT BASED ON IMPLEMENTING A PARAMETER ADJUSTMENT AT A REMOTE DEVICE WITHIN THE STRUCTURE.” The entirety of the aforementioned application is incorporated by reference herein.

TECHNICAL FIELD

The subject disclosure relates generally to facilitating structure automation functionality by automatically modifying a condition of an environment based on implementing a parameter adjustment at a remote device within the structure.

BACKGROUND

The advancement of computing technology has evolved into an inter-networking of devices with the capability to collect and exchange data, which is referred to as the Internet of Things (IoTs). Devices that can be utilized as IoT devices include physical devices, vehicles, objects, and other items embedded with communication capabilities. Through the utilization of the IoT devices, various entities can interact with connected computing assets over a communications network. Unique challenges exist to increase the capabilities of IoT devices, as well as to improve the operation and management of IoT devices.

SUMMARY

The following presents a simplified summary of the disclosed subject matter to provide a basic understanding of some aspects of the various embodiments. This summary is not an extensive overview of the various embodiments. It is intended neither to identify key or critical elements of the various embodiments nor to delineate the scope of the various embodiments. Its sole purpose is to present some concepts of the disclosure in a streamlined form as a prelude to the more detailed description that is presented later.

One or more embodiments provide a system that can comprise a memory that stores executable components and a processor, operatively coupled to the memory, that executes the executable components. The executable components can comprise a communications component that can facilitate a communication between a central device and at least one remote device. The central device can be positioned at a first location within a structure and the at least one remote device can be positioned at a second location within the structure. The executable components can also comprise an evaluation component that analyzes a condition of an environment at the second location based on information received from the at least one remote device. Further, the executable components can comprise an adjustment component that can facilitate a change to at least one parameter of the at least one remote device based on the condition of the environment. The change can result in a modification to the condition of the environment at the second location while supporting structure automation functionality.

Also, in one or more embodiments, provided is a method that can comprise facilitating, by a system comprising a processor, a communication link between a controller device, a first auxiliary device, and a second auxiliary device. Facilitating the communication link can comprise defining a communication standard that controls a communication between the first auxiliary device and the second auxiliary device. The method can also comprise implementing, by the system, a first change at the first auxiliary device based on a first determination that a first condition within an environment of the first auxiliary device is to be changed. Further, the method can comprise implementing, by the system, a second change at the second auxiliary device based on a second determination that a second condition within the environment of the second auxiliary device is to be changed.

In addition, according to one or more embodiments, provided is machine-readable storage medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations. The operations can comprise establishing a communication between a gateway device and an internet of things device. The gateway device can be positioned at a first location within a structure and the internet of things device can be positioned at a second location within the structure. The operations can also comprise receiving a condition of an environment at the second location based on information received from a sensor associated with the internet of things device. Further, the operations can comprise instructing the internet of things device to adjust a heating parameter or a lighting parameter based on the condition of the environment. The adjustment can result in a modification to the condition of the environment at the second location.

To the accomplishment of the foregoing and related ends, the disclosed subject matter comprises one or more of the features hereinafter more fully described. The following description and the annexed drawings set forth in detail certain illustrative aspects of the subject matter. However, these aspects are indicative of but a few of the various ways in which the principles of the subject matter can be employed. Other aspects, advantages, and novel features of the disclosed subject matter will become apparent from the following detailed description when considered in conjunction with the drawings. It will also be appreciated that the detailed description can include additional or alternative embodiments beyond those described in this summary.

BRIEF DESCRIPTION OF THE DRAWINGS

Various non-limiting embodiments are further described with reference to the accompanying drawings in which:

FIG. 1 illustrates an example, non-limiting, system for facilitating structure automation functionality in accordance with one or more embodiments described herein;

FIG. 2 illustrates another example, non-limiting, system for automatically controlling one or more devices in various parts of a structure to regulate temperatures in accordance with one or more embodiments described herein;

FIG. 3 illustrates an example, non-limiting, system for automatically controlling one or more devices in various parts of a structure to regulate temperatures based on a presence and/or identification of one or more individuals in accordance with one or more embodiments described herein;

FIG. 4 illustrates an example, non-limiting, system for automatically controlling one or more devices in various parts of a structure to control lights in accordance with one or more embodiments described herein;

FIG. 5 illustrates an example, non-limiting, system for automatically controlling one or more devices in various parts of a structure to control temperatures and lights in accordance with one or more embodiments described herein;

FIG. 6 illustrates an example, non-limiting, system for multiple controllers (e.g., central devices) that control respective sets of devices associated with temperature and/or lighting in accordance with one or more embodiments described herein;

FIG. 7 illustrates an example, non-limiting, system that employs machine learning to automate structure automation functionality in accordance with one or more embodiments described herein;

FIG. 8 illustrates an example, non-limiting, method for facilitating structure automation functionality in accordance with one or more embodiments described herein;

FIG. 9 illustrates an example, non-limiting, method for facilitating structure automation functionality based on an identification and location of an individual in accordance with one or more embodiments described herein;

FIG. 10 illustrates an example, non-limiting, computing environment in which one or more embodiments described herein can be facilitated; and

FIG. 11 illustrates an example, non-limiting, networking environment in which one or more embodiments described herein can be facilitated.

DETAILED DESCRIPTION

One or more embodiments are now described more fully hereinafter with reference to the accompanying drawings in which example embodiments are shown. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments. However, the various embodiments can be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the various embodiments.

Discussed herein are various aspects that can relate to a gateway device that can communicate with various other devices to provide various forms of structure automation functionality. The gateway device can facilitate communication with, and among, the other devices. For example, at least a subset of the other devices can be Internet of Things (IoT) devices. Further, the gateway device can enable (or facilitate the enablement of) IoT functionality for legacy non-IoT devices.

According to a specific, non-limiting example, a thermostat in a structure (e.g., a house or another building) can be part of an IoT gateway device that can communicate with IoT devices throughout the structure. Various devices throughout the structure can be utilized to provide structure automation functionality. Further, the gateway device can define a standard communications protocol (e.g., a Building Automation and Control Network or BACnet) that can allow the IoT devices to communicate and can enable IoT functionality for the legacy non-IoT devices.

For example, the IoT gateway device can provide customization and automation for a Heating, Ventilation, and Air Conditioning (HVAC) system by using distributed sensors and self-powered vents to adjust airflow and temperature zones throughout a structure. According to an aspect, real-time air quality assessment, purification and airflow management can be provided as a function of inhabitant needs, historical preferences, and a current state on the environment.

In another example, light switches and/or lighting elements can be incorporated into an IoT BACnet in order to reduce an amount of copper wire within a structure. The light switches can be wireless devices that transmit information to a gateway device, which can activate or deactivate one or more lights. Other IoT devices, such as smoke detectors and carbon monoxide detectors can be also connected to the gateway device.

According to some implementations, the structure automation functionality can facilitate energy harvesting by one or more devices, including the IoT devices. For example, one or more devices can be self-powered devices. In another example, one or more devices can be devices that can generate energy. The generated energy can be utilized to power the device and/or to power other devices to which the device is operatively connected. Further, according to some implementations, at least one device can be operatively connected to a battery that can be charged during operation of the at least one device, or based on operation of another device operatively connected to the at least one device. The battery can be utilized to power one or more devices.

FIG. 1 illustrates an example, non-limiting, system 100 for facilitating structure automation functionality in accordance with one or more embodiments described herein. Aspects of the systems, apparatuses or processes explained in this disclosure can constitute machine-executable component(s) embodied within machine(s) (e.g., embodied in one or more computer readable mediums (or media) associated with one or more machines). Such component(s), when executed by the one or more machines (e.g., computer(s), computing device(s), virtual machine(s), etc.) can cause the machine(s) to perform the operations described.

As illustrated, the system 100 can include a central device 102, a first remote device 104, and an Nth remote device 106, wherein N is an integer equal to or greater than zero. According to some implementation, the central device can be classified as a gateway device (or a controller device) and the remote devices can be classified as Internet of Things (IoT) devices.

Although the term “central” device is utilized herein, the device does not need to be in the center of the system 100 or the center of a structure. Instead, the term “central” is utilized to indicate that the device is a main device that can facilitate, at least part of, the structure automation functionality through utilization of one or more of the remote devices. Further, the term “remote” is utilized to indicate that the remote devices can be positioned in various areas, which can be near the central device or located a distance from the central device. In some implementations, the central device can be located in a first area and a remote device can be located in a second area, which can be a different room, a different floor of a structure, located external to the structure, and so on.

The central device 102 can comprise a communication component 108, an evaluation component 110, an adjustment component 112, at least one memory 114, and at least one processor 116. Further, the remote devices can comprise respective communication modules. For example, the first remote device 104 can comprise a first communication module 118 and the Nth remote device 106 can comprise an Nth communication module 120.

The central device 102, via the communication component 108, can communicate with the first remote device 104, via the first communication module 118, and/or the Nth remote device 106, via the Nth communication module 120. Further, the remote devices can communicate with one another via respective communication modules. For example, communication can be facilitated between the first communication module 118 and the Nth communication module 120. In an example, the central device 102 can define a standard protocol (e.g., a BACnet) that can allow IoT devices to communicate with each other, and can enable IoT functionality for legacy non IoT devices.

According to some implementations, the remote devices can comprise embedded sensing elements or sensors. For example, as illustrated, the first remote device 104 can be operatively connected to a first sensor 122 and the Nth remote device 106 can be operatively connected to an Nth sensor 124. As illustrated, the sensors can be embedded in the remote devices. However, according to some implementations, the sensors can be located at a distance from the remote devices, while retaining a communication link with the remote devices. The sensors can be various types of sensors that can observe, measure, detect, and/or otherwise determine one or more conditions of the area, interactions within the area (e.g., interactions between people, movements of a person, and so on), audible information (e.g., voice commands or other audible signals). Further, the sensors can be utilized with artificial intelligence in order to monitor and adjust ambient conditions within the structure.

In accordance with some implementations, the sensors can be indoor air quality sensors. For example, an indoor air quality sensor can be configured to detect one or more of various gases (e.g., carbon monoxide (CO₂), natural gas, methane, and so on) and/or volatile organic compounds (VOCs). According to some implementations, multiple sensors can be included in the remote device(s). For example, the multiple sensors can be located on a single chip of the remote device, which can increase a functionality of the device while not significantly contributing to a footprint size of the device.

If one or more sensors detect the presence of the gas(es) and/or VOCs, an alarm can be activated. The alarm can be activated at the sensor and/or remote device. Alternatively or additionally, the alarm can be activated at the central device 102. In some implementations, a signal can be relayed to one or more mobile devices to inform authorized (or registered) individuals of the activated alarm.

In some implementations, the remote devices can include one or more air filters (e.g., thin air filters) to clean the air within the structure in order to improve an air quality. For example, the filter(s) can remove particulate matter (e.g., defined by a size, such as a particulate diameter up to a defined micron size) from the air as the air is moved through or across the filter(s).

The evaluation component 110 can analyze information received from the remote devices. According to an implementation, the information received can be related to a temperature, a humidity level, one or more pollutants, a presence of an individual, an identity of the individual, a preference of the individual, and so on. The adjustment component 112 can facilitate a change to one or more parameters associated with the respective remote devices based on the information analyzed by the evaluation component 110. For example, a parameter can be a temperature setting. In another example, a parameter can be an activation or a deactivation or a damper, fan, or other apparatus associated with a HVAC system and/or a lighting system. According to some implementations, the vents (or at least a subset of the vents) can be smart vents that dynamically adjust as a function of a user's stated preferences.

In further detail, if the evaluation component 110 determines a temperature of a location is above a defined temperature level (or below the defined temperature level), the adjustment component 112 can facilitate an airflow adjustment for a temperature zone associated with the location. For example, the defined temperature level can be based on a time of day and/or a day of week. In another example, if the evaluation component 110 determines an individual has entered a location, a temperature setting in that location can be modified by the adjustment component 112 based on a defined parameter. For example, a parameter can be that if an individual is in a room the temperature should be approximately x degrees during the summer, and y degrees during the winter, where x and y are integers. In another example, a parameter can indicate that if no individuals are in the room, the temperature should be approximately b degrees in the summer, and c degrees in the winter, where b and c are integers. In another example, the parameter can be that if there is no one in the room, the temperature should be reduced by f degrees (if the winter) and increased by g degrees (in the summer), where f and g are integers, in order to conserve energy. Thereafter, when a person enters the room, or is expected to enter the room, the temperature can be dynamically adjusted based on the person's preferences and/or based on a defined value (e.g., x degrees in summer, y degrees in winter).

In yet another example, the parameter can be a tailored parameter based on the individual. For example, a first person can define a first preference that indicates a room should be a first temperature when the first person is in the room. In addition, a second person can define a second preference that indicates the room should be a second temperature when the second person is in the room. Further to this example, a third preference can be defined to indicate that the room should be a third temperature if both the first person and the second person are in the room. For example, if the first person prefers the temperature to be high (e.g., an elderly person that experiences cold chills quite often) and the second person prefers the temperature to be cooler, the temperature may be adjusted to level between the two preferences. In some cases, the adjusted level may be closer to the preference of the first person instead of the second person, however, the disclosed aspects are not limited to this implementation.

According to some implementations, the various preferences can be determined based on observed information about the individual and the observed information can be retained as historical information (e.g., stored in the at least one memory 114). For example, if it has been observed that a particular individual adjusts a thermostat temperature level upon or after entry into an area of the structure most of the time (e.g., more often than not, above a defined level (e.g., more than 50% of the time, more than 30% of the time, more than 65% of the time, and so on)), it can be inferred that the individual prefers the manual temperature setting, which can be used as the individuals preferred setting. In another example if an individual usually turns on/off certain lights it can be inferred that the user prefers that light setting over another light setting (e.g., a preference previously selected by the user). Accordingly, the information about the manual light setting can be retained as historical information (e.g., in the at least one memory) and used to adjust the lights for the identified individual.

Thus, the adjustment component 112 can facilitate a temperature control for the room based on whether the evaluation component 110 determines that only the first person, only the second person, or both the first person and the second person are in the room. In some implementations, more than two people can be in the room and the temperature can be adjusted accordingly. For example, if the preferences of only a few of the people are known, various indications can be utilized to determine if the temperature should be adjusted (e.g., observation of one or more persons putting on a sweater, using a blanket, a verbal indication (e.g., a person stating “I am cold.” or “It is hot in here.”), and so on). Accordingly, one or more of the sensors can be audible sensors, movement detection sensors, cameras, microphones, and so on.

In still another example, the changes made by the adjustment component 112 can be related to the lights in the rooms. Accordingly, as the individual moves about the house, lights, or groups of lights, can be activated (e.g., turned on) or deactivated (e.g., turned off) based on the location of the individual. For example, as an individual enters a room, or is expected to enter the room, the lights can be turned on. As the individual leaves the room, or after leaving the room, the lights can be turned off. In some implementations, the person can verbally command that light(s) be turned on and/or off and, based on detection of the verbal command, the corresponding light can be turned on/off.

Although the temperature and lights are discussed herein with respect to people, the disclosed aspects are not limited to this implementation. Instead, consideration can be provided for animals (e.g., pets) that move throughout the house (e.g., dog, cat, and so on) as well as animals that remain in a fixed location (e.g., fish, birds, animals in a cage, aquarium, or other defined area).

In accordance with some implementations, the communication component 108 can facilitate communication between the devices within the structure (e.g., the first remote device 104, the Nth remote device 106) to devices or systems external to the structure over one or more external networks. According to some implementations, the communication (e.g., either on the local network or over the one or more external networks) can be wireless. However, the disclosed aspects are not limited to this implementation and at least some communication can be performed through a wired connection, or a combination of wired and wireless connections.

According to some implementations, the central device 102 can be a local Machine to Machine (M2M) management device. M2M is a broad term that can be used to describe technology that can enable networked devices to exchange information and perform actions without manual assistance (e.g., by a human) M2M technologies can be utilized to connect a multitude of devices within a single network. Such connected devices can include any device that has computing and communication technology (e.g., vehicles, buildings, appliances, vending machines, medical equipment, industrial equipment, and so on). For example, an electrical device that is capable of being activated/deactivated (e.g., turned on and off, such as through an on/off switch) can be connected to another electrical device capable of being activated/deactivated via a wired network and/or a wireless network. Accordingly, these electrical devices have the capability to perform M2M communications, which is referred to as Machine Type Communications (MTC).

M2M communication and/or MTC can be used for a variety of purposes in a wide range of applications and, therefore, can offer several benefits to industry, business, and individuals. Further, M2M communication can enable IoT and other applications, such as home automation systems, mobile healthcare, telemetry, and so on.

The one or more local networks and the one or more external networks can include various types of networks that can facilitate M2M or MTC (it is noted that the terms MTC and M2M can be used interchangeably). For example, the one or more local networks and the one or more external networks can include, but are not limited to: cellular networks, femto networks, picocell networks, microcell networks, internet protocol (IP) networks Wi-Fi service networks, broadband service network, enterprise networks, cloud based networks, and the like. The devices of the system 100 (e.g., the central device 102, the first remote device 104, the Nth remote device 106, and the like) can employ various wireless communication technologies to facilitate wired and/or wireless radio communications between the devices. For example, these communication technologies can include but are not limited to: Universal Mobile Telecommunications System (UMTS) technologies, LTE technologies, advanced LTE technologies (including voice over LTE or VoLTE), narrowband IoT (NB-IoT), Code Division Multiple Access (CDMA) technologies, Time Division Multiple Access (TDMA) technologies, Orthogonal Frequency Division Multiplexing (OFDN) technologies, Filter Bank Multicarrier (FBMC) technologies, Wireless Fidelity (Wi-Fi) technologies, Worldwide Interoperability for Microwave Access (WiMAX) technologies, General Packet Radio Service (GPRS) technologies, Enhanced GPRS, technologies, Third Generation Partnership Project (3GPP) technologies, Fourth Generation Partnership Project (4GPP) technologies, Fifth Generation Partnership Project (5GPP) technologies, Ultra Mobile Broadband (UMB) technologies, High Speed Packet Access (HSPA) technologies, Evolved High Speed Packet Access (HSPA+), High-Speed Downlink Packet Access (HSDPA) technologies, High-Speed Uplink Packet Access (HSUPA) technologies, ZIGBEE® technologies, or another IEEE 802.XX technology, BLUETOOTH® technologies, BLUETOOTH® low energy (BLE) technologies, near field communication (NFC), RF4CE, WirelessHART, 6LoWPAN, Z-Wave, ANT, and the like.

As discussed above, the communication component 108 can facilitate communication with the first remote device 104 and the Nth remote device 106 over one or more local networks, which can be a subsystem. For example, the subsystem can be an M2M subsystem that can comprise two or more communicatively coupled M2M devices (e.g., the first remote device 104 and the Nth remote device 106, another IoT device, another non-IoT device, and so on) that can be configured to exchange information and perform one or more actions that facilitate network connectivity for IoT device and non-IoT devices.

The at least one memory 114 can be operatively coupled to the at least one processor 116 and can store computer executable components and/or computer executable instructions. The at least one processor 116 can facilitate execution of the computer executable components and/or the computer executable instructions stored in the at least one memory 114. The term “coupled” or variants thereof can include various communications including, but not limited to, direct communications, indirect communications, wired communications, and/or wireless communications.

Further, the at least one memory 114 can store protocols associated with analyzing conditions of an environment and comparing those conditions to one or more parameters in order to facilitate structure automation functionality as discussed herein. Further, the at least one memory 114 can facilitate action to control communication between the system 100, the central device 102, the first remote device 104, and the Nth remote device 106, other systems, other central devices, and/or other remote devices, such that the system 100 can employ stored protocols and/or algorithms to achieve structure automation functionality as described herein.

It is noted that although the one or more computer executable components and/or computer executable instructions can be illustrated and described herein as components and/or instructions separate from the at least one memory 114 (e.g., operatively connected to at least one memory 114), the various aspects are not limited to this implementation. Instead, in accordance with various implementations, the one or more computer executable components and/or the one or more computer executable instructions can be stored in (or integrated within) the at least one memory 114. Further, while various components and/or instructions have been illustrated as separate components and/or as separate instructions, in some implementations, multiple components and/or multiple instructions can be implemented as a single component or as a single instruction. Further, a single component and/or a single instruction can be implemented as multiple components and/or as multiple instructions without departing from the example embodiments.

It should be appreciated that data store components (e.g., memories) described herein can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example and not limitation, nonvolatile memory can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM), which acts as external cache memory. By way of example and not limitation, RAM is available in many forms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM). Memory of the disclosed aspects are intended to comprise, without being limited to, these and other suitable types of memory.

The at least one processor 116 can facilitate respective analysis of information related to structure automation functionality. The at least one processor 116 can be a processor dedicated to analyzing conditions and/or modifying one or more parameters based on data received (e.g., captured through one or more sensing elements), a processor that controls one or more components of the system 100, and/or a processor that both analyzes conditions and modifies parameters based on data received and controls one or more components of the system 100.

FIG. 2 illustrates another example, non-limiting, system 200 for automatically controlling one or more devices in various parts of a structure to regulate temperatures in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 200 can comprise one or more of the components and/or functionality of system 100, and vice versa.

As illustrated, at least one thermostat 202 can be embedded, at least partially, in the central device 102. According to some implementations, the at least one thermostat 202 can replace a central thermostat hardwired in a house. As discussed, the remotes devices can be located throughout a structure (e.g., a home, an office, a building, a hospital, a prison, and so on). The first sensor 122 can determine a first temperature condition 204 at the area where the first sensor 122 is located (or where the first remote device 104 is located). The Nth sensor 124 can determine a second temperature condition 206 at the area where the Nth sensor 124 is located (or where the Nth remote device 106 is located).

The information related to the temperature conditions can be communicated to the central device 102. The temperature condition information can be communicated at regular intervals, at periodic interfaces, upon request from the central device 102, based on a change to the temperature over a defined change level (e.g., one degree, two degrees, and so on), or based on other criteria. Upon or after receiving the respective temperature conditions, a comparison component 208 can determine whether the temperature condition satisfies a defined temperature level, which can be a temperature range (e.g., between 68 degrees and 70 degrees Fahrenheit). For example, the comparison component 208 can determine whether the temperature is above the defined temperature level and, therefore, should be lowered. Additionally or alternatively, the comparison component 208 can determine the temperature is below the defined threshold level and, therefore, should be raised.

In some implementations, different defined temperature levels or ranges can be associated with the different remote devices, or a subset of the remote devices. The different temperature levels or ranges can be based on preferences of individuals that normally occupy the area, that are currently occupying the area, or based on the area being vacant. In a specific, non-limiting example, a child's bedroom can be kept at a first temperature (or temperature range) and a living room can be kept a second temperature (or temperature range). In such a manner, zone control can be provided even in the absence of the HVAC system (e.g., ductwork) being installed with zones based on control of one or more components of the HVAC system (e.g., dampers, fan speed, and so on).

The comparison component 208 can provide the determination related to the temperature level (e.g., too low, too high, within an acceptable range) to the adjustment component 112. To facilitate adjustment of the temperature, the adjustment component 112 can instruct an activation component 210 to implement a functionality of one or more of a first vent and/or damper 212 and an Nth vent and/or damper 214. For example, the vent and/or dampers can be powered through power lines (e.g., hard wired), battery powered, or powered through another power source. In some implementations, the vents and/or dampers can be self-powered. For example, the air moving across or over the vents and/or dampers can be utilized to charge a battery. In another example, the self-powered vents and/or the self-powered dampers can utilize an apparatus, designed in a windmill configuration, a fan-type configuration, or another configuration, within the ductwork to generate energy. The configuration of the apparatus can cause at least a portion of the apparatus to rotate. The energy produced by the rotation of the apparatus can be used to charge a battery attached to the vents/dampers. Alternatively or additionally, the apparatus can be built into the vent and/or damper.

In an example, if the temperature is too high, the activation component 210 can facilitate opening one or more vents/dampers to allow additional air flow (e.g., cooled air) into a room and/or section of a structure. In another example, if the temperature is too low, the activation component 210 can facilitate closing one or more vents/damper to restrict air flow (e.g., cooled air) into the room and/or section of the structure. Alternatively and/or additionally, for heated air, if the temperature is too low, the activation component 210 can facilitate opening the one or more vents/dampers to allow additional heated air to flow into the room and/or section of the structure. Further, if the temperature is too high, the activation component 210 can facilitate closing the one or more vents/dampers to restrict the flow of heated air into the room and/or section of the structure. Additional actions can also be facilitated by the activation component 210 to heat and/or cool rooms and/or sections of a structure.

FIG. 3 illustrates an example, non-limiting, system 300 for automatically controlling one or more devices in various parts of a structure to regulate temperatures based on a presence and/or identification of one or more individuals in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 300 can comprise one or more of the components and/or functionality of the system 100, the system 200, and vice versa.

In this implementation, temperature sensors (e.g., the first sensor 122, the Nth sensor 124, or other sensors) can be distributed throughout the structure and operatively connected to the central device 102 and the at least one thermostat 202 to enable customized heating zones throughout the structure. Accordingly, as one or more individuals 302 move throughout a structure, a location component 304 can determine the presence of the one or more individuals 302 in defined rooms, sections, and/or heat zones of the structure. For example, the location component 304 can interface with location sensors (e.g., the first sensor 122, the Nth sensor 124, or other sensors) to determine the presence of the one or more individuals 302. For example, the central device 102, through interaction with the sensors, can track the one or more individuals 302 using motion sensors, audio sensors, and/or video recorders distributed throughout the structure.

In an additional or alternative implementation, the location component 304 can track the location of the one or more individuals 302 based on a communication link established with respective mobile devices 306 associated with the one or more individuals 302. For example, the mobile devices can include a Global Positioning System (GPS) that can provide a location of the mobile device. In another example, location services provided by the mobile devices 306 can be utilized to track the location. Various types of communication links can be established between the mobile devices 306 and the central device 102, including, but not limited to Near Field Communication (NFC) and Bluetooth.

In some implementations, a temperature of a room can be maintained at a first level and, when one or more individuals 302 are approaching the room, or are in the room, the temperature can be changed to a second level. For example, in the winter, to conserve resources a temperature in the room can be lowered to a level that might be uncomfortable if people are in the room. Therefore, when people are in the room, the temperature can be automatically increased to make the environment more comfortable. Alternatively, in the summer, to conserve resources, an air conditioner can be turned off and/or set at a higher temperature for unoccupied rooms. When one or more individuals are expected to occupy the room, the temperature can be adjusted for further cooling. Additionally, one or more vents/dampers can be opened (or closed for other areas of the structure) to provide more air flow to the recently occupied rooms in order to adjust the temperature of those areas more quickly (or more air flow can make the environment feel cooler in some cases).

In an example, a hotel can have unoccupied rooms that are maintained at a temperature to conserve resources. The central device 102 can be operatively connected to a computing device in the lobby (e.g., check-in counter). As guests are checked into the hotel and rooms are assigned, a communications signal can be sent to a remote device in the room to automatically adjust the temperature in the room. Accordingly, the remote device can begin to heat and/or cool the room, depending on an outside temperature and/or defined settings. Therefore, as the guests are finishing the check-out process and moving their luggage to the room, the temperature adjustment is in process and can be at a more comfortable level when the guests enter the room. Further to the above example, as guests check out of the room and/or after the rooms have been prepared for the next guest, the temperature can be returned to the level selected to conserve resources. In some implementations, if a room has been unoccupied for a defined amount of time (e.g., during the day a guest attends a conference), the temperature can be changed to a level to conserve resources. Further to this implementation, based upon on indication that the guest is returning to the room, the central device 102 can automatically facilitate adjustment of the temperature to the previous setting (e.g., the setting selected by the guest).

According to some implementations, an identification component 308 can determine which person is present in the structure. In an example, the identification component 308 can obtain information related to the individuals 302 from the mobile devices 306. In another example, the identification component 308 can make the determination based on voice signatures that are associated with different individuals. For example, voice signatures can be captured from different individuals that reside in a house, that work in an office, or that are associated with the structure.

Further, based on the determination or identification of the individual, a preference component 310 can match the identified individual to a temperature preference of the individual. For example, the central device 102 can retain (e.g., in the at least one memory 114) preferences defined by the individual. According to some implementations, the mobile device associated with the individual can retain the preferences (e.g., in a memory) and convey the information to the central device 102. The defined temperature level can be based on a configurable temperature setting determined as a function of an individual. For example, preferences can be built into user accounts that are associated with mobile devices, and as a person moves throughout the house, the preferences can track the person such that the furnace can heat rooms differently based on whether the person is in the room.

According to some implementations, the central device 102 can comprise an interface component 312 that can facilitate selection of one or more parameters associated with the remote devices as discussed herein. Further, the mobile devices can comprise respective interface components that facilitate the entry and/or adjustment of parameters associated with the remote devices.

A mobile device can also be called, and can contain some or all of the functionality of a system, subscriber unit, subscriber station, mobile station, mobile, wireless terminal, remote station, remote terminal, access terminal, user terminal, terminal, wireless communication device, wireless communication apparatus, user agent, user device, or user equipment (UE). A device can be a cellular telephone, a cordless telephone, a Session Initiation Protocol (SIP) phone, a smart phone, a feature phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a laptop, a handheld communication device, a handheld computing device, a netbook, a tablet, a satellite radio, a data card, a wireless modem card, and/or another processing device for communicating over a wireless system. Further, although discussed with respect to wireless devices, the disclosed aspects can also be implemented with wired devices, or with both wired and wireless devices.

The interface component 312 (as well as other interface components discussed herein) can provide, a command line interface, a speech interface, Natural Language text interface, and the like. For example, a Graphical User Interface (GUI) can be rendered that provides a entity with a region or means to load, import, select, read, and so forth, various requests and/or preferences and can include a region to present the results of the various requests and/or preferences. These regions can include known text and/or graphic regions that include dialogue boxes, static controls, drop-down-menus, list boxes, pop-up menus, as edit controls, combo boxes, radio buttons, check boxes, push buttons, graphic boxes, and so on. In addition, utilities to facilitate the conveyance of information, such as vertical and/or horizontal scroll bars for navigation and toolbar buttons to determine whether a region will be viewable, can be employed. Thus, it might be inferred that the entity did want the action performed.

The entity can also interact with the regions to select and provide information through various devices such as a mouse, a roller ball, a keypad, a keyboard, a pen, gestures captured with a camera, a touch screen, and/or voice activation, for example. According to an aspect, a mechanism, such as a push button or the enter key on the keyboard, can be employed subsequent to entering the information in order to initiate information conveyance. However, it is to be appreciated that the disclosed aspects are not so limited. For example, merely highlighting a check box can initiate information conveyance. In another example, a command line interface can be employed. For example, the command line interface can prompt the entity for information by providing a text message, producing an audio tone, or the like. The entity can then provide suitable information, such as alphanumeric input corresponding to an option provided in the interface prompt or an answer to a question posed in the prompt. It is to be appreciated that the command line interface can be employed in connection with a GUI and/or Application Programming Interface (API). In addition, the command line interface can be employed in connection with hardware (e.g., video cards) and/or displays (e.g., black and white, and Video Graphics Array (EGA)) with limited graphic support, and/or low bandwidth communication channels.

FIG. 4 illustrates an example, non-limiting, system 400 for automatically controlling one or more devices in various parts of a structure to control lights in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 400 can comprise one or more of the components and/or functionality of the system 100, the system 200, the system 300, and vice versa.

The system can incorporate one or more illumination devices, illustrated as a first set of illumination devices 402 through an Nth set of illumination devices 404. The illumination devices can include, but are not limited to, light switches, lighting elements, outlets, and so on. The lighting elements can be incorporated into the IoT BACnet implemented by the central device 102. Thus, the amount of copper wiring in a house (or other structure) can be reduced such that only actual illumination devices that need power for functionality utilize a power line. For example, in traditional homes, light switches physically open and close electrical circuits that power lights and other outlet devices. Therefore, a run of copper wire is installed between the lighting element and the switch. However, as discussed herein, by incorporating the illumination devices in the IoT BACnet provided by the central device 102, the light switches can be wireless devices that transmit information to the central device 102. The central device 102 can convey the information to the lighting elements (e.g., illumination devices) to instruct the illumination devices to turn on or off (e.g., via the activation component 210). In this way, switches can be customized to control different sets or groupings of lights based on user preferences. Similarly, one or more switches can be placed in a configuration in order to turn on or off one or more power outlets. Other devices can also be connected to the IoT gateway device (e.g., the central device 102) such as smoke detectors, carbon monoxide detectors and so on.

For example, an illumination status component 406 can determine whether one or more illumination devices are activated (e.g., turned on). Based on the presence of an individual in a room, the central device 102 can instruct one or more illumination devices to turn on or off. For example, as an individual leaves a room, or a section of a structure, certain illumination devices can be deactivated. Further, as the individual enters, or is about to enter, a room and/or section of the structure, the illumination devices can be activated (e.g., turned on).

Further, the illumination can be based on user preferences. For example, during the nighttime, as a person moves around her house, she might not want all the lights to turn on. Accordingly, the person can select a subset of lights (e.g., turn on the hallway light and the kitchen light, do not turn on the living room light or the bedroom light). In another example, as a person enters a house, she might specify that certain lights should be activated (e.g., the table lamps in the family room, and the upstairs hall light).

FIG. 5 illustrates an example, non-limiting, system 500 for automatically controlling one or more devices in various parts of a structure to control temperatures and lights in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 500 can comprise one or more of the components and/or functionality of the system 100, the system 200, the system 300, the system 400, and vice versa.

According to some implementations, both heat and lighting (as well as other controlled remote devices) can be modified based on various criteria. For example, the criteria can include adjusting a temperature to a resource conservation level, and turning off the lights if a room or section of a building has been unoccupied for a defined amount of time.

In another example, the criteria can include turning on a subset of lights and adjusting a temperature based on a user preference as determined by the preference component 310. For example, the remote devices or IoT devices could be distributed throughout a house. Sensor information can be feed to the central device to indicate where members of the household are located. Additionally or alternatively, light switches can contain temperature sensors and a thermostat could use the temperature information based on which light switch is activated (e.g., turned on).

According to some implementations, a sensor associated with a remote device can determine a presence of an indication at a location (e.g., a second location). For example, the remote device can be a smart vent that automatically adjusts as a function of a stated preference of the individual. In another example, the remote device can be an air humidity device, and wherein the adjustment component 112 automatically adjusts an output (or a functioning) of the air humidity device as a function of a stated humidity level preference of the individual.

In yet another example, the remote device can a filter device. Further to this example, the evaluation component 110 can analyze an allergen level and the adjustment component 112 can adjust an air flow through the filter device based on an allergen level preference of the individual.

In some implementations, the evaluation component 110 can be a sensor (or can be operatively coupled to a sensor) that monitors ambient conditions within the structure. Further to this example, the adjustment component 112 can facilitate the change based on an ambient condition preference of the individual. In some embodiments, the central device 102 can instruct a damper to allow airflow to a room based on which room is occupied. The central device 102 can determine which room is occupied based on sensors that can identify where people are, or based on whether the IoT light switches have activated lights in a room. The central device 102 can also communicate with a mobile device, or a vehicle, such that the IoT gateway device can instruct a furnace to turn on when a person returns home, opens a garage door, or is within a predetermined distance of the structure. Such determinations can be made based on information received from a mobile device associated with the person.

According to some implementations, a voice signature can be utilized to identify a person. Based on the identification, a customized level of access and/or control of the various devices can be provided to the person. For example, if the person is a parent, full access can be provided. However, if the person is a child, only a limited amount of access may be available (e.g., can turn on the television for one hour, but cannot turn on a stove).

Further, in some implementations the sensors and/or remote devices can be utilized to determine unauthorized individuals within the structure. An individual can be an individual that is not recognized by the system (e.g., a trespasser, a robber, and so on). In another example, the individual can be a specified individual (e.g., a son's classmate that is not allowed to visit the son for a period of time, a previous occupant that should no longer have access to the premises, a terminated employee, and so on). Based on detection of the unauthorized individual, one or more notifications can be transmitted to authorized individuals associated with the structure (e.g., owners of a house, security personnel in a building, and so forth). The notification can be relayed though respective communications devices of the authorized individuals.

FIG. 6 illustrates an example, non-limiting, system 600 for multiple controllers (e.g., central devices) that control respective sets of devices associated with temperature and/or lighting in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 600 can comprise one or more of the components and/or functionality of the system 100, the system 200, the system 300, the system 400, system 500 and vice versa.

In some examples, more than one central device can be included in a structure. For example, a first central device 602 can communicate with, and control, a first set of remote devices 604, a second central device 606 can communicate with, and control, a second set of remote devices 608, and so on. The first central device 602 and second central device 606 can comprise one or more of the components and/or functionality of the central device 102 of FIG. 1. Further, the first set of remote device 604 and the second set of remote devices 608 can comprise one or more of the components and/or functionality of the first remote device 104 and the Nth remote device 106.

The placement of more than one central device in a structure can be based on the size of the structure (e.g., multiple floors, length of the structure), layout of the structure (e.g., an office building might include multiple tenants and respective central devices can be utilized for the tenants), or based on other considerations. For example, a thermostat in a house (or other structure) can be included in a central device that can communicate with remote devices throughout the structure. Various devices around the structure can be utilized to provide the structure automation functionality.

As illustrated, the first central device 602, the second central device 606, and other central devices within a structure can communicate with each other. Accordingly, if one of the central devices experiences a failure, another central device can assume at least a portion of the functionality for the failed central device. For example, the first central device 602 can experience a failure and, therefore, the second central device 606 is notified of this failure. The second central device 606 can utilize a remote device (or more than one remote device) of the second set of remote devices 608 as an ad hoc central device. In this situation, the selected remote device(s) can be provided instructions in order to control one or more remote devices in the first set of remote devices 604. For example, a first device in the second set of remote devices 608 can receive instructions from the second central device 606, wherein the instructions are intended for a second device in the first set of remote devices 604. Accordingly, the first device can transmit the instructions to the second device in the case where the second central device 606 cannot establish a link to the second device.

FIG. 7 illustrates an example, non-limiting, system 700 that employs machine learning to automate structure automation functionality in accordance with one or more embodiments described herein. Repetitive description of like elements employed in other embodiments described herein is omitted for sake of brevity. The system 700 can comprise one or more of the components and/or functionality of the system 100, the system 200, the system 300, the system 400, the system 500, and vice versa.

The system 700 can include a machine learning and reasoning component 702, which can be utilized to automate one or more of the disclosed aspects. The machine learning and reasoning component 702 can employ automated learning and reasoning procedures (e.g., the use of explicitly and/or implicitly trained statistical classifiers) in connection with performing inference and/or probabilistic determinations and/or statistically-based determinations in accordance with one or more aspects described herein.

According to an implementation, the machine learning and reasoning component 702 can, separately or in conjunction with one or more sensors, monitor ambient conditions within a structure. Based on the ambient conditions and user preferences, the conditions within the structure can be dynamically adjusted to more closely conform to the user preferences.

For example, if a user has allergies, the system 700 can monitor for various allergens (e.g., cat dander). Based on a determination that the level of allergens is above a threshold level, the system 700 (e.g., the machine learning and reasoning component 702 or another system component) can automatically increase filtering to a certain level and based on a continual monitoring of the allergen level. For example, the system 700 can be operated such that an air flow is at a higher level or for a longer duration until the allergen level is at or near the threshold level. In such a manner, the allergen level can be adjusted before the user with allergies arrives at the location.

According to some implementations, the machine learning and reasoning component 702 (alone or in conjunction with other system components) can determine an identification of an individual in the defined space and can automatically adjust the temperature and/or air flow. For example, a grandmother is in a room and does not like air blowing on her. Thus, the system 700, based on the identification of the individual and the corresponding preference, can automatically turn down (or turn off) the fan(s) and/or close a damper that is near the grandmother.

According to some implementations, a preference can be an air humidity level. For example, a first user may prefer the air to be dry, while a second user prefers the air to be slightly humid Thus, based upon detection of the first user, the system 700 can operate, or can facilitate the operation of, a dehumidifier. Based upon the detection of the second user, the system can operate, or can facilitate the operation of, a humidifier. The dehumidifier and/or humidifier (e.g., a humidity device) can be integrated with the system 700 or can be separate from the system 700 (e.g., operates independently). Further, the dehumidifier and/or humidifier can be classified as internet of things devices.

For example, the machine learning and reasoning component 702 can employ principles of probabilistic and decision theoretic inference. Additionally or alternatively, the machine learning and reasoning component 702 can rely on predictive models constructed using machine learning and/or automated learning procedures. Logic-centric inference can also be employed separately or in conjunction with probabilistic methods.

The machine learning and reasoning component 702 can infer, whether a status of an environment of one or more remote devices should be adjusted based on observed conditions. Based on this knowledge, the machine learning and reasoning component 702 can make an inference related to one or more changes that should be implemented based on configurable preferences and/or configurable input parameters related to conditions of the environment.

As used herein, the term “inference” refers generally to the process of reasoning about or inferring states of the system, a component, a module, the environment, and/or models from a set of observations as captured through events, reports, data, and/or through other forms of communication. Inference can be employed to identify a specific context or action, or can generate a probability distribution over states, for example. The inference can be probabilistic. For example, computation of a probability distribution over states of interest based on a consideration of data and/or events. The inference can also refer to techniques employed for composing higher-level events from a set of events and/or data. Such inference can result in the construction of new events and/or actions from a set of observed events and/or stored event data, whether or not the events are correlated in close temporal proximity, and whether the events and/or data come from one or several events and/or data sources. Various classification schemes and/or systems (e.g., support vector machines, neural networks, logic-centric production systems, Bayesian belief networks, fuzzy logic, data fusion engines, and so on) can be employed in connection with performing automatic and/or inferred action in connection with the disclosed aspects.

The various aspects, for example, in connection with controlling one or more remote devices (e.g., IoT devices) to provide structure automation functionality can employ various artificial intelligence-based schemes for carrying out various aspects thereof. For example, a process for determining if a heating element should be activated or deactivated, or whether a light should be turned on or off, can be enabled through an automatic classifier system and process. Such considerations can also take into consideration the presence of one or more individuals as well as preferences of those individuals.

A classifier is a function that maps an input attribute vector, x=(x1, x2, x3, x4, xn), to a confidence that the input belongs to a class. In other words, f(x)=confidence(class). Such classification can employ a probabilistic and/or statistically-based analysis (e.g., factoring into the analysis utilities and costs) to prognose or infer an action that should be employed to determine how to modify a functionality of a remote device when confronted with a selection between two or more functionalities (e.g., two individuals are in the same room). In the case of remote devices, for example, attributes can be identification of individuals, and the classes can be defined preferences of the individuals.

A support vector machine (SVM) is an example of a classifier that can be employed. The SVM operates by finding a hypersurface in the space of possible inputs, which hypersurface attempts to split the triggering criteria from the non-triggering events. Intuitively, this makes the classification correct for testing data that can be similar, but not necessarily identical to training data. Other directed and undirected model classification approaches (e.g., naïve Bayes, Bayesian networks, decision trees, neural networks, fuzzy logic models, and probabilistic classification models) providing different patterns of independence can be employed. Classification as used herein, can be inclusive of statistical regression that is utilized to develop models of priority.

One or more aspects can employ classifiers that are explicitly trained (e.g., through a generic training data) as well as classifiers that are implicitly trained (e.g., by observing and recording an individual's behavior, by receiving extrinsic information, and so on). For example, SVM's can be configured through a learning or training phase within a classifier constructor and feature selection module. Thus, a classifier(s) can be used to automatically learn and perform a number of functions, including but not limited to determining according to a predetermined criteria which remote devices to activate or deactivate, a determination of which remote devices should operate together, and so forth. The criteria can include, but is not limited to, similar user preferences, related information, and so forth.

Additionally or alternatively, an implementation scheme (e.g., a rule, a policy, and so on) can be applied to control and/or regulate remote devices and resulting actions, inclusion of one or more remote devices (e.g., a smoke detector and an illumination device) to determine how to modify a remote device to control an environment, and so forth. In some implementations, based upon a predefined criterion, the rules-based implementation can automatically and/or dynamically interpret individual preferences. In response thereto, the rules-based implementation can automatically interpret and carry out functions associated with the individual preferences and output appropriate modifications to remote devices by employing a predefined and/or programmed rule(s) based upon any desired criteria.

Methods that can be implemented in accordance with the disclosed subject matter, will be better appreciated with reference to the following flow charts. While, for purposes of simplicity of explanation, the methods are shown and described as a series of blocks, it is to be understood and appreciated that the disclosed aspects are not limited by the number or order of blocks, as some blocks can occur in different orders and/or at substantially the same time with other blocks from what is depicted and described herein. Moreover, not all illustrated blocks can be required to implement the disclosed methods. It is to be appreciated that the functionality associated with the blocks can be implemented by software, hardware, a combination thereof, or any other suitable means (e.g. device, system, process, component, and so forth). Additionally, it should be further appreciated that the disclosed methods are capable of being stored on an article of manufacture to facilitate transporting and transferring such methods to various devices. Those skilled in the art will understand and appreciate that the methods could alternatively be represented as a series of interrelated states or events, such as in a state diagram. According to some implementations, a machine-readable storage medium, comprising executable instructions that, when executed by a processor, facilitate performance of the methods. According to other implementations, a non-transitory computer-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of the methods.

FIG. 8 illustrates an example, non-limiting, method 800 for facilitating structure automation functionality in accordance with one or more embodiments described herein. The method 800 starts at 802, with a communication between a central device (e.g., a gateway device) and at least one remote device (e.g., an IoT device) is facilitated. The central device can be positioned at a first location within a structure and the at least one remote device can be positioned at a second location within the structure. The communication can be facilitated over a wired communications link or a wireless communications link. For example, the gateway device can define a standard communications protocol that can allow the IoT devices to communicate and can enable IoT functionality for the legacy non-IoT devices.

At 804, a status of an environment at the at least one remote device can be received. For example, the remote device can monitor its environment for a temperature. Based upon a determination that that temperature has changed a defined temperature amount, the remote device can convey the information to a central device. In another example, the temperature information can be provided based on a request for the information. In another example, the temperature information can be provided in an ongoing manner, a continual manner, periodically, or based on one or more triggers.

Upon or after receipt of the temperature information, at 806, a determination can be made whether the reported temperature value satisfies a defined temperature criteria. For example, the defined temperature criteria can specify that the temperature at the at least one remote device should be within a first temperature range. If the reported temperature value is within the first temperature range, the method 800 returns to 804 to wait for receipt of another temperature value. However, if the determination is that the reported temperature value is outside the first temperature range, at 808, a change to at least one parameter at the remote device can be facilitated based on the status of the environment. The change can result in a modification to the status of the environment at the second location while supporting structure automation functionality. Continuing the above example, if the temperature is too high, the change can be implemented to reduce the temperature. Alternatively, if the temperature is too low, the change can be implemented to increase the temperature.

In an example, to change the parameter, a central device can cause a change to a vent and/or damper associated with a HVAC system. In some implementations, the change can relate to lighting elements associated with an electrical circuit within the structure. For example, one or more lights and/or outlets can be activated and/or deactivated based on a location of people within the structure and/or based on an identification of the person.

FIG. 9 illustrates an example, non-limiting, method 900 for facilitating structure automation functionality based on an identification and location of an individual in accordance with one or more embodiments described herein. At 902, a connection between at least one central device and one or more remote devices (e.g., IoT devices) can be established. The connection can be based on a BACnet that can be established between the central device(s) and the remote device(s). Examples of remote device can include, but are not limited to, heating elements, lighting elements, and other devices (e.g., smoke detectors, carbon monoxide detectors, ovens, coffee makers, alarm systems, and so on). At 904, the remote device(s) can be controlled (e.g., by the central device) to maintain an environment at the remote device(s) at a first defined status (e.g., as discussed above with respect to the method 800 of FIG. 8). For example, the first defined status can be a setting for conservation of resources, such as maintaining a HVAC system at an outside temperature appropriate setting, deactivating lighting elements when not needed (except for security purposes) in order to reduce power costs, natural gas costs, or to eliminate power waste.

A determination can be made, at 906, whether an individual is located within range of at least one remote device. The determination can be made based on one or more sensors. Alternatively or additionally, the determination can be made based on or more mobile devices associated with various individuals. For example, the determination can be made based on detecting movement (e.g., via the one or more sensors) within portions of the structure. In another example, the determination can be made based on detecting voices or other sounds related to human activity. If the determination is made that an individual is not detected (“NO”), the method can return to 904 until the presence of an individual is detected.

If the determination at 906 is that an individual is present within the structure (“YES”), at 908, a determination is made whether the individual can be identified. The identification can include various forms of recognition (e.g., facial, voice signature, fingerprint readers, retinal scanners, and so on). According to some implementations, a mobile device associated with the individual can be utilized to determine the identity. If the individual cannot be recognized “NO,” at 910, at least one parameter of the environment can be changed from the first status to a second status. The second defined status can be a change to a HVAC system from a resource conservation setting to a setting determined to be comfortable for an individual. In another example, the second defined status can be turning on one or more lights while an individual is present. According to some implementations, the first defined status and the second defined status can be a same or similar status. However, according to other implementations, the first defined status and the second defined status can be different statuses.

If the individual can be identified at 908 (“YES”), at 912, a determination is made whether preferences have been established for the individual. For example, the preferences can be based on historical data related to the identified individual (e.g., the individual has historically turned on a particular lamp upon entering a room, the individual has historically adjusted a thermostat to a certain temperature). In another example, the preferences can be based on explicit preferences received from the individual. For example, through various interface components, the individual can be prompted for preferences and such preference can be maintained at the central device and/or at a mobile device(s) associated with the individual. If there are no preferences known about the individual (“NO”), at 910 at least one parameter of the environment can be changed from the first status to a second status.

However, if preferences are known about the individual (“YES”), at 914, at least one parameter of the environment can be changed from the first status (or the second status) to a third status, wherein the third status is tailored for the identified individual. According to some implementations, the third defined status and the first defined status and/or the second defined status can be a same or similar status. However, according to other implementations, the third defined status and the first defined status and/or the second defined status can be different statuses.

At 916, a determination can be made whether the individual has left the area. If the individual has not left the area (“NO”), the method 900 can enter a holding pattern until the individual has left the area or another change has occurred. For example, another change can be that another person enters the area, a manual change is made by the individual with respect to one or more of the remote devices (a light is turned on or off, a thermostat programmable temperature is changed, and so on). If the individual has left the area (“YES”), at 918, instructions can be provided to change at least one parameter of the environment to the previous defined status (e.g., the first defined status, the second defined status, or another status).

In order to provide a context for the various aspects of the disclosed subject matter, FIGS. 10 and 11 as well as the following discussion are intended to provide a brief, general description of a suitable environment in which the various aspects of the disclosed subject matter can be implemented.

With reference to FIG. 10, an example environment 1010 for implementing various aspects of the aforementioned subject matter includes a computer 1012. The computer 1012 includes a processing unit 1014, a system memory 1016, and a system bus 1018. The system bus 1018 couples system components including, but not limited to, the system memory 1016 to the processing unit 1014. The processing unit 1014 can be any of various available processors. Multi-core microprocessors and other multiprocessor architectures also can be employed as the processing unit 1014.

The system bus 1018 can be any of several types of bus structure(s) including the memory bus or memory controller, a peripheral bus or external bus, and/or a local bus using any variety of available bus architectures including, but not limited to, 8-bit bus, Industrial Standard Architecture (ISA), Micro-Channel Architecture (MSA), Extended ISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB), Peripheral Component Interconnect (PCI), Universal Serial Bus (USB), Advanced Graphics Port (AGP), Personal Computer Memory Card International Association bus (PCMCIA), and Small Computer Systems Interface (SCSI).

The system memory 1016 includes volatile memory 1020 and nonvolatile memory 1022. The basic input/output system (BIOS), containing the basic routines to transfer information between elements within the computer 1012, such as during start-up, is stored in nonvolatile memory 1022. By way of illustration, and not limitation, nonvolatile memory 1022 can include read only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable PROM (EEPROM), or flash memory. Volatile memory 1020 includes random access memory (RAM), which acts as external cache memory. By way of illustration and not limitation, RAM is available in many forms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM).

Computer 1012 also includes removable/non-removable, volatile/non-volatile computer storage media. FIG. 10 illustrates, for example a disk storage 1024. Disk storage 1024 includes, but is not limited to, devices like a magnetic disk drive, floppy disk drive, tape drive, Jaz drive, Zip drive, LS-100 drive, flash memory card, or memory stick. In addition, disk storage 1024 can include storage media separately or in combination with other storage media including, but not limited to, an optical disk drive such as a compact disk ROM device (CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RW Drive) or a digital versatile disk ROM drive (DVD-ROM). To facilitate connection of the disk storage 1024 to the system bus 1018, a removable or non-removable interface is typically used such as interface 1026.

It is to be appreciated that FIG. 10 describes software that acts as an intermediary between users and the basic computer resources described in suitable operating environment 1010. Such software includes an operating system 1028. Operating system 1028, which can be stored on disk storage 1024, acts to control and allocate resources of the computer 1012. System applications 1030 take advantage of the management of resources by operating system 1028 through program modules 1032 and program data 1034 stored either in system memory 1016 or on disk storage 1024. It is to be appreciated that one or more embodiments of the subject disclosure can be implemented with various operating systems or combinations of operating systems.

A user enters commands or information into the computer 1012 through input device(s) 1036. Input devices 1036 include, but are not limited to, a pointing device such as a mouse, trackball, stylus, touch pad, keyboard, microphone, joystick, game pad, satellite dish, scanner, TV tuner card, digital camera, digital video camera, web camera, and the like. These and other input devices connect to the processing unit 1014 through the system bus 1018 via interface port(s) 1038. Interface port(s) 1038 include, for example, a serial port, a parallel port, a game port, and a universal serial bus (USB). Output device(s) 1040 use some of the same type of ports as input device(s) 1036. Thus, for example, a USB port can be used to provide input to computer 1012, and to output information from computer 1012 to an output device 1040. Output adapters 1042 are provided to illustrate that there are some output devices 1040 like monitors, speakers, and printers, among other output devices 1040, which require special adapters. The output adapters 1042 include, by way of illustration and not limitation, video and sound cards that provide a means of connection between the output device 1040 and the system bus 1018. It should be noted that other devices and/or systems of devices provide both input and output capabilities such as remote computer(s) 1044.

Computer 1012 can operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) 1044. The remote computer(s) 1044 can be a personal computer, a server, a router, a network PC, a workstation, a microprocessor based appliance, a peer device or other common network node and the like, and typically includes many or all of the elements described relative to computer 1012. For purposes of brevity, only a memory storage device 1046 is illustrated with remote computer(s) 1044. Remote computer(s) 1044 is logically connected to computer 1012 through a network interface 1048 and then physically connected via communication connection 1050. Network interface 1048 encompasses communication networks such as local-area networks (LAN) and wide-area networks (WAN). LAN technologies include Fiber Distributed Data Interface (FDDI), Copper Distributed Data Interface (CDDI), Ethernet/IEEE 802.3, Token Ring/IEEE 802.5 and the like. WAN technologies include, but are not limited to, point-to-point links, circuit switching networks like Integrated Services Digital Networks (ISDN) and variations thereon, packet switching networks, and Digital Subscriber Lines (DSL).

Communication connection(s) 1050 refers to the hardware/software employed to connect the network interface 1048 to the system bus 1018. While communication connection 1050 is shown for illustrative clarity inside computer 1012, it can also be external to computer 1012. The hardware/software necessary for connection to the network interface 1048 includes, for exemplary purposes only, internal and external technologies such as, modems including regular telephone grade modems, cable modems and DSL modems, ISDN adapters, and Ethernet cards.

FIG. 11 is a schematic block diagram of a sample computing environment 1100 with which the disclosed subject matter can interact. The sample computing environment 1100 includes one or more client(s) 1102. The client(s) 1102 can be hardware and/or software (e.g., threads, processes, computing devices). The sample computing environment 1100 also includes one or more server(s) 1104. The server(s) 1104 can also be hardware and/or software (e.g., threads, processes, computing devices). The servers 1104 can house threads to perform transformations by employing one or more embodiments as described herein, for example. One possible communication between a client 1102 and servers 1104 can be in the form of a data packet adapted to be transmitted between two or more computer processes. The sample computing environment 1100 includes a communication framework 1106 that can be employed to facilitate communications between the client(s) 1102 and the server(s) 1104. The client(s) 1102 are operably connected to one or more client data store(s) 1108 that can be employed to store information local to the client(s) 1102. Similarly, the server(s) 1104 are operably connected to one or more server data store(s) 1110 that can be employed to store information local to the servers 1104.

Reference throughout this specification to “one embodiment,” or “an embodiment,” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, the appearances of the phrase “in one embodiment,” “in one aspect,” or “in an embodiment,” in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, the particular features, structures, or characteristics can be combined in any suitable manner in one or more embodiments.

As used in this disclosure, in some embodiments, the terms “component,” “system,” “interface,” “manager,” and the like are intended to refer to, or comprise, a computer-related entity or an entity related to an operational apparatus with one or more specific functionalities, wherein the entity can be either hardware, a combination of hardware and software, software, or software in execution, and/or firmware. As an example, a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, computer-executable instructions, a program, and/or a computer. By way of illustration and not limitation, both an application running on a server and the server can be a component

One or more components can reside within a process and/or thread of execution and a component can be localized on one computer and/or distributed between two or more computers. In addition, these components can execute from various computer readable media having various data structures stored thereon. The components can communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network such as the Internet with other systems via the signal). As another example, a component can be an apparatus with specific functionality provided by mechanical parts operated by electric or electronic circuitry, which is operated by a software application or firmware application executed by one or more processors, wherein the processor can be internal or external to the apparatus and can execute at least a part of the software or firmware application. As yet another example, a component can be an apparatus that provides specific functionality through electronic components without mechanical parts, the electronic components can comprise a processor therein to execute software or firmware that confer(s) at least in part the functionality of the electronic components. In an aspect, a component can emulate an electronic component via a virtual machine, e.g., within a cloud computing system. While various components have been illustrated as separate components, it will be appreciated that multiple components can be implemented as a single component, or a single component can be implemented as multiple components, without departing from example embodiments

In addition, the words “example” and “exemplary” are used herein to mean serving as an instance or illustration. Any embodiment or design described herein as “example” or “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word example or exemplary is intended to present concepts in a concrete fashion. As used in this application, the term “or” is intended to mean an inclusive “or” rather than an exclusive “or.” That is, unless specified otherwise or clear from context, “X employs A or B” is intended to mean any of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, then “X employs A or B” is satisfied under any of the foregoing instances. In addition, the articles “a” and “an” as used in this application and the appended claims should generally be construed to mean “one or more” unless specified otherwise or clear from context to be directed to a singular form.

Inference can also refer to techniques employed for composing higher-level events from a set of events and/or data. Such inference results in the construction of new events or actions from a set of observed events and/or stored event data, whether the events are correlated in close temporal proximity, and whether the events and data come from one or several event and data sources. Various classification schemes and/or systems (e.g., support vector machines, neural networks, expert systems, Bayesian belief networks, fuzzy logic, and data fusion engines) can be employed in connection with performing automatic and/or inferred action in connection with the disclosed subject matter.

In addition, the various embodiments can be implemented as a method, apparatus, or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof to control a computer to implement the disclosed subject matter. The term “article of manufacture” as used herein is intended to encompass a computer program accessible from any computer-readable device, machine-readable device, computer-readable carrier, computer-readable media, machine-readable media, computer-readable (or machine-readable) storage/communication media. For example, computer-readable media can comprise, but are not limited to, a magnetic storage device, e.g., hard disk; floppy disk; magnetic strip(s); an optical disk (e.g., compact disk (CD), a digital video disc (DVD), a Blu-ray Disc™ (BD)); a smart card; a flash memory device (e.g., card, stick, key drive); and/or a virtual device that emulates a storage device and/or any of the above computer-readable media. Of course, those skilled in the art will recognize many modifications can be made to this configuration without departing from the scope or spirit of the various embodiments

The above description of illustrated embodiments of the subject disclosure, including what is described in the Abstract, is not intended to be exhaustive or to limit the disclosed embodiments to the precise forms disclosed. While specific embodiments and examples are described herein for illustrative purposes, various modifications are possible that are considered within the scope of such embodiments and examples, as those skilled in the relevant art can recognize.

In this regard, while the subject matter has been described herein in connection with various embodiments and corresponding FIGs, where applicable, it is to be understood that other similar embodiments can be used or modifications and additions can be made to the described embodiments for performing the same, similar, alternative, or substitute function of the disclosed subject matter without deviating therefrom. Therefore, the disclosed subject matter should not be limited to any single embodiment described herein, but rather should be construed in breadth and scope in accordance with the appended claims below. 

What is claimed is:
 1. A system, comprising: a memory that stores executable components; and a processor, operatively coupled to the memory, that executes the executable components, the executable components comprising: a communications component that facilitates a communication between a central device and at least one remote device, wherein the central device is positioned at a first location within a structure and the at least one remote device is positioned at a second location within the structure; an evaluation component that analyzes a condition of an environment at the second location based on information received from the at least one remote device; and an adjustment component that facilitates a change to at least one parameter of the at least one remote device based on the condition of the environment, wherein the change results in a modification to the condition of the environment at the second location while supporting structure automation functionality.
 2. The system of claim 1, wherein the central device is classified as a gateway device, and wherein the at least one remote device is classified as an internet of things device.
 3. The system of claim 1, wherein the at least one remote device is a self-powered damper of a heating, ventilation, and air conditioning system.
 4. The system of claim 3, wherein the self-powered damper is operatively connected to an apparatus that rotates with a movement of air inside duct of the heating, ventilation, and air conditioning system, wherein a rotation of the apparatus charges a battery operatively attached to the self-powered damper, wherein the battery is a power source for the self-powered damper.
 5. The system of claim 1, wherein the adjustment component facilitates a temperature change at the second location based on a presence of an individual at the second location.
 6. The system of claim 5, wherein the adjustment component facilitates a lighting change at the second location based on the presence of the individual at the second location.
 7. The system of claim 1, further comprising at least one sensor associated with the at least one remote device, wherein the at least one sensor determines a presence of an individual at the second location.
 8. The system of claim 7, wherein the at least one remote device is a smart vent that automatically adjusts as a function of a stated preference of the individual.
 9. The system of claim 7, wherein the at least one remote device is an air humidity device, and wherein the adjustment component automatically adjusts an output of the air humidity device as a function of a stated humidity level preference of the individual.
 10. The system of claim 7, wherein the evaluation component is a sensor that monitors ambient conditions within the structure, and wherein the adjustment component facilitates the change based on an ambient condition preference of the individual.
 11. The system of claim 7, wherein the at least one remote device is a filter device, and wherein the evaluation component analyzes an allergen level and the adjustment component adjusts an air flow through the filter device based on an allergen level preference of the individual.
 12. A method, comprising: facilitating, by a system comprising a processor, a communication link between a controller device, a first auxiliary device, and a second auxiliary device, wherein the facilitating the communication link comprises defining a communication standard that controls a communication between the first auxiliary device and the second auxiliary device; implementing, by the system, a first change at the first auxiliary device based on a first determination that a first condition within an environment of the first auxiliary device is to be changed; and implementing, by the system, a second change at the second auxiliary device based on a second determination that a second condition within the environment of the second auxiliary device is to be changed.
 13. The method of claim 12, wherein the first auxiliary device and the second auxiliary device are classified as internet of things devices.
 14. The method of claim 12, wherein the first auxiliary device is a heating element of a heating, air conditioning, and ventilation system, and wherein the second auxiliary device is a lighting element.
 15. The method of claim 12, wherein the implementing the first change comprises transmitting a first instruction to the first auxiliary device, the first instruction specifies the first change, and wherein the implementing the second change comprises transmitting a second instruction to the second auxiliary device, the second instruction specifies the second change.
 16. The method of claim 12, further comprising: determining, by the system, a presence of an individual within the environment of the first auxiliary device, wherein the implementing the first change is based on a defined preference of the individual and related to the first auxiliary device.
 17. The method of claim 16, further comprising: determining, by the system, the presence of the individual within the environment of the second auxiliary device, wherein the implementing the second change is based on another defined preference of the individual and related to the second auxiliary device.
 18. A machine-readable storage medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising: establishing a communication between a gateway device and an internet of things device, wherein the gateway device is positioned at a first location within a structure and the internet of things device is positioned at a second location within the structure; receiving a condition of an environment at the second location based on information received from a sensor associated with the internet of things device; and instructing the internet of things device to adjust a heating parameter or a lighting parameter based on the condition of the environment, wherein the adjustment results in a modification to the condition of the environment at the second location.
 19. The machine-readable storage medium of claim 18, wherein the receiving the condition of the environment comprises detecting a presence of an individual within the second location, the operations further comprising determining an identity and a preference of the individual based upon information derived from a mobile device associated with the individual.
 20. The machine-readable storage medium of claim 18, the operations further comprising: transmitting a first signal to a lighting element for an activation of the lighting element, and transmitting a second signal to the lighting element for a deactivation of the lighting element. 